
public class AutoConvertDetail {
    public static void main(String[] args) {
        //有多种类型混合运算时，系统首先将所有数据转化成容量最大的那种类型，然后再运算
        /*
        容量大小关系：
        char->int->long->float->double;
        byte->short->int->long->float->double;
         */

        int n1=10;
        //float res=n1+1.1;//错误,1.1是double类型，结果类型是double；
        double res1=n1+1.1;//正确;
        System.out.println(res1);
        float res2=n1+1.1F;//正确;1.1F是float类型，结果类型是float;
        System.out.println(res2);

        byte b1=10;//正确;
        System.out.println(b1);
        //byte b2=10;
        //int b3=b2;//错误

        //byte和char,short和char不能相互转换；
        //byte a1=10;
        //char a2=a1;//错误


        //byte、short、char三者可以参与运算,运算时首先转换成int类型;**意思是这三种类型只要参与运算，自动升为int；哪怕byte+byte也好
        byte x1=1;
        byte x2=1;
        //short s1=x1+x2;//错误,结果应为int类型
        int s1=x1+x2;
        System.out.println(s1);
    }
}